Skip to content
On this page

总结

  • <cin> | tr -d : 删除
  • <cin> | tr SET1 SET2: 替换
  • cat template.yaml | tr SET1 SET2 > template.yaml: 替换后覆盖文件

提问

  • [x] 1. 将文本 Readme.md 中的每行首部空格字符全部去掉

    cat Readme.md | tr -d ' ' 如果想要删除所有空格:cat Readme.md | tr -d '[:blank:]' 更多的特殊标志可以查看文档 man tr

1. 前提提要、场景

文本内容替换,在很多场景都有需求。

tr 从标准输入设备读取数据,经过字符串转译替换后,将结果输出到标准输出设备。
所以如果要替换文件的内容,需要读取文件内容后,经过 tr 转换,再通过 > 覆盖写入。
tr 仅仅只是个文本转换工具。

2. tr 文本替换

命令:tr [OPTION]... SET1 [SET2]

sh
# 小写转化为大写
$ echo hello | tr a-z A-Z
HELLO

# hello -> world
$ echo hello | tr hello world
world

# 去除字符串中的多余空格
# -d:删除特定字符
$ echo '   hello  ' | tr -d ' '